IEnumerable<T> ve IQueryable<T> Arasındaki Fark
Selamlar,
Her ikisi de birbiriyle aynı gözüküp, aslında farklı operasyon işlemleri gerçekleşen iki yapıyı ele alalım.
Aralarındaki fark, IQueryable
Örnek kod:
IQueryable
var StoktakiUrunler = Urun.Where (c => c.Stok > 0);
Bu kod sadece stoktaki olan ürünleri getirmek için SQL'i çalıştıracaktır.
Diğer yandan, aşağıdaki kod, veritabanındaki özgün sorguyu yürütecek ve ardından bellekte olmayan stoktaki ürünleri filtreleyecektir.
IEnumerable
var StoktakiUrunler =Urun.Where (c => c.Stok > 0);
Bu oldukça önemli bir farktır ve IQueryable
Başka bir örnek, sayfalama yapıyorsunuz diyelim. IQueryable'da Take and Skip'i kullanırsanız, yalnızca istenen satır sayısını elde edersiniz. Ama bunu IEnumerable
Umarım anlaşılmıştır,
Recep.